/* 
 * File:   QuitCommand.h
 * Author: Bram
 *
 * Created on January 24, 2013, 7:58 PM
 */

#ifndef QUITCOMMAND_H
#define	QUITCOMMAND_H

#include "Command.h"

class QuitCommand : public Command
{
public:
    QuitCommand();
    QuitCommand(const char *);
    QuitCommand(const QuitCommand& orig);
    virtual ~QuitCommand();
    Command* createNew();
    bool isValid();
    
    void ExcecuteServerReceiveCommand(TcpSocket*, queue<Command *>& commandQueue);
    void ExcecuteServerSendCommand(TcpSocket*, queue<Command *>& commandQueue);
    
    void ExcecuteClientReceiveCommand(TcpSocket*, queue<Command *>& commandQueue);
    void ExcecuteClientSendCommand(TcpSocket*, queue<Command *>& commandQueue);
    
private:
    static QuitCommand cInstance;

};

#endif	/* QUITCOMMAND_H */

